package ai_auto

const AiConditionTemplateName = "ai_condition_template"

// 条件逻辑设置
// 添加条件组合模版
//    支持与或的组合关系
//    可以设定单个条件参数的随机范围
// 条件组合的定义：
//    是否关联命令的策略逻辑
// 设定依赖逻辑：
//    有敌人、有友军、有目标
//    明确条件组的结果情况，多选，供命令进行依赖分析
// 条件影响命令顺序：
//    条件需要细化，并不符合多样性的初衷
//    命令顺序不能显著提高AI难度

type AiCondition struct {
	Type     byte `json:"type"`
	Target   byte `json:"target"`
	Select   byte `json:"select"`
	Filter   byte `json:"filter"`
	Number   int  `json:"number"`
	Sort     byte `json:"sort"`
	MaxValue int  `json:"max_value"`
	MinValue int  `json:"min_value"`
}
type AiConditionTemplate struct {
	Id         int             `json:"id" orm:"auto" sql:"INT"`
	Name       string          `json:"name" sql:"VARCHAR"`
	Conditions [][]AiCondition `json:"conditions" sql:"JSON"`
	Group      []int           `json:"group" sql:"JSON"`
}
